# coding: utf-8

# 一、查找操作
# 1.in 、not in 列表，查询某个元素在不在列表，返回布尔值
animalList = ["fish", "dog", "cat"]
fruitList = ["orange", "watermelon", "apple"]

if "watermelon" in fruitList:
    print("今天有西瓜吃")
else:
    print("今天没西瓜吃")

# 2.index方法:查询某个元素在指定区间中首次出现的位置,返回该元素在原始列表的下标
# 用法:index(查找的元素，开始位置，结束位置) 或 index(查找的元素)来从头到尾查找
# 注意事项：找不到会报错，区间是左闭右开
nameList = ["张三", "李四", "王五", "赵六", "田七"]
print(nameList.index("王五", 1, len(nameList)))  # 2  nameList[2]是王五

# 3.count方法:查找某个元素在列表中的出现次数
numberList = [1, 2, 3, 2, 3, 4, 3, 4, 5]
print(numberList.count(4))  # 2  出现2次

# 4.列表的切片 list1[起始位置:终止位置:步进值]
nameList = ["张三", "李四", "王五", "赵六", "田七"]
# 切片：从1开始，末尾结束，步进2
cutList = nameList[1:len(nameList):2]
print(cutList)  # ['李四', '赵六']

# 二、排序操作
# 1.reverse方法:反转列表，直接将原始列表反转，而不是创建一个新的，不演示
# 2.sort方法:排序，默认升序
numberList.sort()  # 升序排序
print(numberList)  # [1, 2, 2, 3, 3, 3, 4, 4, 5]
numberList.sort(reverse=True)  # 降序排序
print(numberList)  # [5, 4, 4, 3, 3, 3, 2, 2, 1]
